package com.mmall.pay.param;

import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;

/**
 * @author gg
 * @version NamekPayConfigParam.java, v 0.1 2019-05-23 11:05 gg
 */
@Data
public class MmallPayConfigParam implements Serializable {

    /**
     * 一个公司或平台可能存在多个公众号，app等，根据这个id查询对应配置
     */
    @NotNull(message = "publicId 不能为空")
    private Long publicId;

    /**
     * 订阅号 = 1，服务号 = 2，小程序 = 3, 生活号 = 4
     * WeixinAppTypeEnum 中获取
     */
    @NotNull(message = "type 不能为空")
    private Integer type;

    /**
     * 支付方式 对应PayTypeEnum
     */
    @NotNull(message = "支付方式 不能为空")
    private Integer payType;

    /**
     * 是否授权
     */
    @NotNull(message = "是否授权 不能为空")
    private Integer isAuthorized;

    /**
     * 平台类型 1- 微信 2-支付宝
     */
    @NotNull(message = "平台类型 不能为空")
    private Integer platFormType;

    /**
     * 支付的会员id
     */
    @NotNull(message = "支付的会员id 不能为空")
    private Long memberId;

    /**
     * 支付的会员名称
     */
    @NotBlank(message = "支付的会员名称 不能为空")
    private String memberName;
}